﻿//=============================================================================
// Project  : NIPO Component Framework
// File    : IPOPlugin.cs
// Author  : Bernhard Dieber (Bernhard.Dieber@uni-klu.ac.at)
// Copyright 2010 by Bernhard Dieber
// This code is published under the Microsoft Public License (Ms-PL).  A copy
// of the license should be distributed with the code.  It can also be found
// at the project website: http://NIPO.CodePlex.com.   This notice, the
// author's name, and all copyright notices must remain intact in all
// applications, documentation, and source files.
//=============================================================================

using System;
using System.Collections.Generic;
using System.Text;

namespace NIPO.Plugins
{
    /// <summary>
    /// The base class for the processing chain.
    /// </summary>
    public abstract class IPOPlugin : Plugin
    {
        /// <summary>
        /// Resets a PlugIn after a framework run. After this call the plugin must be runnable again
        /// </summary>
        public abstract void Reset();
        /// <summary>
        /// Internal reset function to implement in the abstract classes
        /// </summary>
        internal abstract void InternalReset();
    }
}